/**
 * @Description: 列表操作按钮
 * @author zhangyonghui
 * @date 2024/5/23
 */

import React from 'react';

function TOButton({text, onClick, type, isCancelPropagation}) {
  return (
    <span
      className='operableSpan'
      style={{cursor: 'pointer', color: type === 'danger' ? '#ff2544' : type === 'primary' ? '#0E87FF' : type === 'handle' ? '#24B366' : '#202239'}}
      onClick={event => {
        // 阻止事件传递,如果table 条目有点击事件时, 点击操作时不能往下传递,会触发行事件
        if (!isCancelPropagation) {
          event && event.stopPropagation();
        }
        onClick(event);
      }}
    >
      {text}
    </span>
  );
}

// React.memo 在函数组件中使用,防止父组件更新时子组件也进行更新
export default React.memo(TOButton);
